#include <kanzi/ui/node/concept/list_box/list_box_trajectory_presenter.hpp>
Classes | |
| struct | KzuTrajectoryLayoutSnapInfo |
Public Types | |
| using | BaseClass |
| using | ItemSharedPtr |
| using | LayoutSharedPtr |
| using | ListBoxTrajectoryPresenterType |
| using | ScrollViewSharedPtr |
Public Member Functions | |
| void | addToLayout (ItemSharedPtr listBoxItem) |
| void | bringItemCenter (size_t selection, bool smooth) |
| Brings given item to the selector position. | |
| void | enableKeyNavigation (bool enabled) |
| Enables directional key navigation on the Trajectory Presenter. | |
| KzuVirtualItemIterator | findMiddleIterator () |
| LayoutSharedPtr | getLayout () const |
| void | initialize (TFinalClass *listBox, LayoutSharedPtr layout) |
| bool | isEffectivelyLooping () const |
| Returns whether presentation is in looping mode. | |
| ListBoxTrajectoryPresenter () | |
| void | notifyItemAdded (size_t index) |
| Implements notifyItemAdded for a trajectory list box. | |
| void | notifyItemContainerChanged () |
| Invalidates layout if the item container is changed. | |
| void | notifyItemRemoved (size_t index) |
| Implements notifyItemRemoved for a trajectory list box. | |
| void | notifyItemReplaced (size_t) |
| Implements kzuPresenterItemReplaced for trajectory list box. | |
| void | removeFromLayout (ItemSharedPtr listBoxItem) |
| void | setScroll (Vector2 scroll) |
| void | snap (Vector2 position, Vector2 direction, bool changeTarget, Vector2 *out_position, int *out_itemIndex) |
| Snaps from a given position towards a given direction. | |
| void | tryMoveFocusInDirection (ListBoxConcept::FocusMoveTarget target, bool fallback=false) |
| Tries to move the focus to the next or previous item in a Trajectory List Box node. | |
| void | tryMoveFocusToEdge (ListBoxConcept::FocusMoveTarget target, bool fallback=false) |
| Tries to move the focus to the first or last item in a Trajectory List Box node. | |
| void | tryMoveFocusToPage (ListBoxConcept::FocusMoveTarget target, bool fallback=false) |
| void | update () |
| Updates presenter's state and visible items. | |
| ~ListBoxTrajectoryPresenter () | |
Public Member Functions inherited from kanzi::ListBoxScrollPresenterConceptImpl< ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >, TFinalClass, TScrollView > | |
| ScrollViewSharedPtr | getScrollView () const |
| Returns the Scroll View that the presenter uses. | |
| void | initialize (TFinalClass *listBox) |
| ListBoxScrollPresenterConceptImpl specific initialization. | |
| ListBoxScrollPresenterConceptImpl ()=default | |
| Constructor. | |
Protected Member Functions | |
| bool | calculateAliveItemsRange () |
| Sets indices and offsets of first and last alive items and the number of alive elements. | |
| void | extendAliveItemsRangeToItem (size_t index) |
| Extends the alive items range of the presenter to include the item at a given index. | |
| ItemSharedPtr | getItem (size_t presenterIndex) const |
| size_t | getItemCount () const |
| Gets number of items in presenters list box. | |
| Vector3 | getItemSize (size_t itemIndex) |
| Returns the size of an item at a given index. | |
| bool | isHorizontalScroll () const |
| Returns whether the Trajectory List Box is scrolling horizontally. | |
| void | iterateLeft (KzuVirtualItemIterator *it) |
| Iterates leftward in a virtual item list. | |
| void | iterateRight (KzuVirtualItemIterator *it) |
| Iterates rightward in a virtual item list. | |
| void | iterateToIndex (KzuVirtualItemIterator *iterator, size_t index) |
| Iterates the iterator to the given index. | |
| void | snapImprove (KzuTrajectoryLayoutSnapInfo *snap, unsigned int objectIndex, float offset, float selectorOffset, kzBool snapLeft, kzBool snapRight) |
| void | updateAliveItemsRange () |
Asks the List Box to update the items in the layout according to the currently set firstIndex and rangeSize, taking into account also the keep alive items. | |
Protected Member Functions inherited from kanzi::ListBoxScrollPresenterConceptImpl< ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >, TFinalClass, TScrollView > | |
| void | onClickBegin (ClickManipulator::ClickBeginMessageArguments &messageArguments) |
| Handles ClickManipulator::onClickBeginMessage. | |
| void | onItemSelected (ListBoxConcept::ItemSelectedMessageArguments &messageArguments) |
| Handles ListBoxConcept::ItemSelectedMessage. | |
| void | onScrolled (ScrollViewConcept::ScrolledMessageArguments &messageArguments) |
| Handles ScrollViewClass::ScrolledMessage. | |
| void | onScrollFinished (ScrollViewConcept::ScrollFinishedMessageArguments &messageArguments) |
| Handles ScrollViewClass::ScrollFinishedMessage. | |
| void | onScrollStarted (ScrollViewConcept::ScrollStartedMessageArguments &messageArguments) |
| Handles ScrollViewClass::ScrollStartedMessage. | |
| void | onSnapRequested (ScrollViewConcept::SnapRequestMessageArguments &messageArguments) |
| Handles ScrollViewClass::SnapRequestMessage. | |
| void | onUserScrollFinished (ScrollViewConcept::UserScrollFinishedMessageArguments &messageArguments) |
| Handles ScrollViewClass::UserScrollFinishedMessage. | |
| void | onUserScrollStarted (ScrollViewConcept::UserScrollStartedMessageArguments &messageArguments) |
| Handles ScrollViewClass::UserScrollStartedMessage. | |
| void | scrollToTargetItem (size_t itemIndex, Vector2 scrollPosition, bool smooth) const |
| Requests Scroll View to scroll to target item position. | |
| void | sendListBoxTargetChangedMessage (size_t targetItem) const |
| Sends ListBoxScrollPresenterConcept::TargetChangedMessage message to List Box. | |
| void | sendScrollViewSetScrollMessage (const Vector2 &scrollPosition) const |
| Sends ScrollViewConcept::SetScrollMessage message to Scroll View. | |
| void | sendScrollViewSetScrollTargetMessage (const Vector2 &scrollTarget) const |
| Sends ScrollViewConcept::SetScrollTargetMessage message to Scroll View. | |
Static Protected Member Functions | |
| static unsigned int | kzuTrajectoryLayoutPresenterItemCountFunction_internal (void *userData) |
| Gets list box's total item count. | |
| static kzsError | kzuTrajectoryLayoutPresenterItemListSizeFunction_internal (unsigned int index, void *userData, Vector3 &size) |
| Gets object's size by index. | |
| static float | kzuTrajectoryLayoutPresenterItemWidthFunction_internal (const Vector3 size) |
| Gets object's width from its size for virtual item list. | |
Additional Inherited Members | |
Protected Attributes inherited from kanzi::ListBoxScrollPresenterConceptImpl< ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >, TFinalClass, TScrollView > | |
| TFinalClass * | m_listBox |
| List Box that owns this presenter. | |
| using kanzi::ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >::ListBoxTrajectoryPresenterType |
| using kanzi::ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >::BaseClass |
| using kanzi::ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >::LayoutSharedPtr |
| using kanzi::ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >::ItemSharedPtr |
| using kanzi::ListBoxTrajectoryPresenter< TFinalClass, TLayout, TItemClass, TScrollView >::ScrollViewSharedPtr |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
Implements notifyItemAdded for a trajectory list box.
Called by the ListBoxConceptImpl after the item has been added.
| index | Index of the item that was added. |
|
inline |
Implements notifyItemRemoved for a trajectory list box.
Called by the ListBoxConceptImpl after the item is removed.
| index | Index of the item that will be removed. |
|
inline |
Implements kzuPresenterItemReplaced for trajectory list box.
|
inline |
Invalidates layout if the item container is changed.
|
inline |
|
inline |
Returns whether presentation is in looping mode.
|
inline |
Enables directional key navigation on the Trajectory Presenter.
| enabled | To enable key navigation, pass true. To disable key navigation, pass false. |
|
inline |
Tries to move the focus to the next or previous item in a Trajectory List Box node.
| target | Where to move the focus:
|
| fallback | Whether to set the focus to the List Box node when there is no focusable list item in the target. |
|
inline |
|
inline |
Tries to move the focus to the first or last item in a Trajectory List Box node.
| target | Where to move the focus:
|
| fallback | Whether to set the focus to the List Box node when there is no focusable list item in the target. |
|
inline |
Updates presenter's state and visible items.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Brings given item to the selector position.
|
inline |
Snaps from a given position towards a given direction.
Returns the snapping target and the index of the item to which the scrolling snapped, unless they are given as nullptr. If the list box target changes to the snapped item, changeTarget is KZ_TRUE. If the snapping did not target any item, the index is -1.
|
inlineprotected |
Sets indices and offsets of first and last alive items and the number of alive elements.
Sets the values of viewInternal member.
|
inlineprotected |
Asks the List Box to update the items in the layout according to the currently set firstIndex and rangeSize, taking into account also the keep alive items.
|
inlineprotected |
|
inlineprotected |
Iterates leftward in a virtual item list.
If the size of an item, to which the iterator points, cannot otherwise be determined, this operation can extend the alive items range of the presenter.
| it | Iterator to iterate. |
|
inlineprotected |
Iterates rightward in a virtual item list.
If the size of an item, to which the iterator points, cannot otherwise be determined, this operation can extend the alive items range of the presenter.
| it | Iterator to iterate. |
|
inlineprotected |
|
inlinestaticprotected |
Gets object's width from its size for virtual item list.
|
inlineprotected |
Extends the alive items range of the presenter to include the item at a given index.
If the item is already in the alive items range, the range does not change.
| index | Index of the item to include in the alive items range. |
|
inlineprotected |
Returns the size of an item at a given index.
If the item is outside the alive items range of the presenter and the List Box cannot determine the size of the item, this operation extends the alive items range.
| itemIndex | The index of the item whose size you want to get. |
|
inlineprotected |
Gets number of items in presenters list box.
|
inlinestaticprotected |
Gets object's size by index.
|
inlinestaticprotected |
Gets list box's total item count.
|
inlineprotected |
Iterates the iterator to the given index.
|
inlineprotected |
Returns whether the Trajectory List Box is scrolling horizontally.